package com.primaryAlgorithm;

import java.security.PublicKey;

/**
 * Description:
 * Copyright:   Copyright (c)2019
 * Company:     zefu
 *
 * @author: 张李鑫
 * @version: 1.0
 * Create at:   2021-09-24 01:25:49
 * <p>
 * Modification History:
 * Date         Author      Version     Description
 * ------------------------------------------------------------------
 * 2021-09-24     张李鑫                     1.0         1.0 Version
 */
public class RemoveDuplicates {
    /**
     * 给你一个有序数组 nums ，请你 原地 删除重复出现的元素，使每个元素 只出现一次 ，返回删除后数组的新长度。
     * <p>
     * 不要使用额外的数组空间，你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。
     * <p>
     * 作者：力扣 (LeetCode)
     * 链接：https://leetcode-cn.com/leetbook/read/top-interview-questions-easy/x2gy9m/
     * 来源：力扣（LeetCode）
     * 著作权归作者所有。商业转载请联系作者获得授权，非商业转载请注明出处。
     */

    public static int removeDuplicates(int[] arr) {

        int index = 0;
        int next = 1;

        while (index < arr.length && next < arr.length) {
            if (arr[index] == arr[next]) {
                next++;
            } else{
                swap(arr,next++,++index);
            }
        }
        return ++index;
    }

    public static void swap(int[] arr, int i, int j) {
        int a=arr[i];
        arr[i]=arr[j];
        arr[j]=a;

    }

    public static void main(String[] args) {
        int [] a={1,2};
        int i = removeDuplicates(a);
        System.out.println(i);
    }


}